package com.xiaoxiaoniu.airoleplay;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.Bean;
import org.springframework.web.client.RestTemplate;
import org.springframework.web.reactive.function.client.WebClient;

/**
 * AI角色扮演应用程序的主启动类
 * 该应用提供了一个基于Spring Boot的后端服务，允许用户与不同角色的AI进行对话
 * 
 * @author xiaoxiaoniu
 * @version 1.0
 * @since 1.0
 */
@SpringBootApplication
public class AiroleplayApplication {

    /**
     * 应用程序入口点
     * 启动Spring Boot应用程序
     * 
     * @param args 命令行参数
     */
    public static void main(String[] args) {
        SpringApplication.run(AiroleplayApplication.class, args);
    }
    
    /**
     * 创建RestTemplate Bean用于HTTP请求
     * 
     * @return RestTemplate实例
     */
    @Bean
    public RestTemplate restTemplate() {
        return new RestTemplate();
    }

    /**
     * 创建WebClient.Builder Bean用于异步HTTP请求
     * 
     * @return WebClient.Builder实例
     */
    @Bean
    public WebClient.Builder webClientBuilder() {
        return WebClient.builder();
    }
}
